Vehicle detection and avoidance

ABSTRACT

A communication from a second vehicle is received. Upon failing to detect the second vehicle based on first vehicle sensor data, a message indicating a forward collision warning is sent. Upon detecting the second vehicle based on the first vehicle sensor data, the forward collision warning is suppressed and a first vehicle brake is actuated.

BACKGROUND

Vehicle collisions often occur at intersections of roadways. A vehiclecan detect a target vehicle at the intersection. Collision mitigationbetween the vehicle and the target vehicle may be difficult andexpensive to implement. For example, determining a threat assessment onthe target vehicle can require data from a plurality of sensors.However, problems arise in operating the vehicle to actuate alerts uponreceiving data from the sensors, providing a nuisance to vehicle users.One problem is an inability to differentiate and evaluate data receivedfrom the sensors.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an example system for operating a vehicle.

FIG. 2 is a view of the vehicle detecting a target vehicle.

FIG. 3 is a view of vehicle sensors occluded by an object.

FIG. 4 is a process flow diagram of an example process for operating thevehicle.

DETAILED DESCRIPTION

A system for a first vehicle includes a computer programmed to receive acommunication from a second vehicle, upon failing to detect the secondvehicle based on first vehicle sensor data, send a message indicating aforward collision warning, and upon detecting the second vehicle basedon the first vehicle sensor data, suppress the forward collision warningand actuate a first vehicle brake.

The computer can be further programmed to determine a threat level ofthe second vehicle and, upon failing to detect the second vehicle, tosend the message indicating the forward collision warning when thethreat level of the second vehicle exceeds a threat threshold. Thecomputer can be further programmed to, upon detecting the secondvehicle, actuate the brake until the threat level drops below the threatthreshold.

The computer can be further programmed to determine a time to collisionbetween the first and second vehicles, and to send the messageindicating the forward collision warning when the time to collision isgreater than a time threshold.

The computer can be further programmed to determine a time to collisionbetween the first and second vehicles, and to actuate the brake when thetime to collision is less than a time threshold.

The computer can be further programmed to receive data about the secondvehicle in the communication including at least one of a speed, aheading, and a location of the second vehicle. The computer can befurther programmed to determine a threat level for the second vehiclebased on the data in the communication.

The computer can be further programmed to send the message with theforward collision warning after actuating the first vehicle brake.

The computer can be further programmed to, upon detecting the secondvehicle, project a trajectory of the second vehicle and to actuate thebrake based on the projected trajectory.

The computer can be further programmed to determine a range for a sensorto collect data about the second vehicle, and to determine that thesensor has failed to detect the second vehicle when the location datafrom the communication from the second vehicle is within the range ofthe sensor and the collected data do not identify the second vehiclewithin the range of the sensor.

A method includes receiving a communication from a second vehicle, uponfailing to detect the second vehicle based on first vehicle sensor data,sending a message indicating a forward collision warning, and, upondetecting the second vehicle based on the first vehicle sensor data,suppressing the forward collision warning and actuating a first vehiclebrake.

The method can further include determining a threat level of the secondvehicle and, upon failing to detect the second vehicle, sending themessage indicating the forward collision warning when the threat levelof the second vehicle exceeds a threat threshold. The method can furtherinclude, upon detecting the second vehicle, actuating the brake untilthe threat level drops below the threat threshold.

The method can further include determining a time to collision betweenthe first and second vehicles, and sending the message indicating theforward collision warning when the time to collision is greater than atime threshold.

The method can further include determining a time to collision betweenthe first and second vehicles and actuating the brake when the time tocollision is less than a time threshold.

The method can further include receiving data about the second vehiclein the communication including at least one of a speed, a heading, and alocation of the second vehicle. The method can further includedetermining a threat level for the second vehicle based on the data inthe communication.

The method can further include sending the message with the forwardcollision warning after actuating the first vehicle brake.

The method can further include, upon detecting the second vehicle,projecting a trajectory of the second vehicle and actuating the brakebased on the projected trajectory.

The method can further include determining a range for a sensor tocollect data about the second vehicle, and determining that the sensorhas failed to detect the second vehicle when the location data from thecommunication from the second vehicle is within the range of the sensorand the collected data do not identify the second vehicle within therange of the sensor.

Further disclosed is a computing device programmed to execute any of theabove method steps. Yet further disclosed is a vehicle comprising thecomputing device. Yet further disclosed is a computer program product,comprising a computer readable medium storing instructions executable bya computer processor, to execute any of the above method steps.

By suppressing forward collision warnings when other vehicle componentsare actuated to address a potential collision, a system can reduce thenumber of nuisance warnings. Furthermore, the system can differentiatebetween potential collisions with a time to collision that can allow ahuman operator to react, during which a forward collision warning can besent, and potential collisions with a time to collision that can allow avehicle computer to operate components in an autonomous mode, duringwhich a forward collision warning can be a nuisance because the vehicleis already reacting to the potential collision.

A computer in a vehicle can use data collected from vehicle-to-vehiclecommunication to detect the presence occluded vehicles. The data in thevehicle-to-vehicle communication may lack the robustness of data fromvehicle sensors. The computer can use the data from thevehicle-to-vehicle communication to detect the presence of the occludedvehicle and the data from the vehicle sensors to actuate one or morevehicle components to avoid a collision with the occluded vehicle.

FIG. 1 illustrates an example system 100 for operating a vehicle 101. Acomputer 105 in the vehicle 101 is programmed to receive collected data115 from one or more sensors 110. For example, vehicle 101 data 115 mayinclude a location of the vehicle 101, a speed of the vehicle 101, etc.Location data may be in a known form, e.g., geo-coordinates such aslatitude and longitude coordinates obtained via a navigation system, asis known, that uses the Global Positioning System (GPS). Furtherexamples of data 115 can include measurements of vehicle 101 systems andcomponents, e.g., a vehicle 101 velocity, a vehicle 101 trajectory, etc.

The computer 105 is generally programmed for communications on a vehicle101 network, e.g., including a communications bus, as is known. Via thenetwork, bus, and/or other wired or wireless mechanisms (e.g., a wiredor wireless local area network in the vehicle 101), the computer 105 maytransmit messages to various devices in a vehicle 101 and/or receivemessages from the various devices, e.g., controllers, actuators,sensors, etc., including sensors 110. Alternatively or additionally, incases where the computer 105 actually comprises multiple devices, thevehicle network may be used for communications between devicesrepresented as the computer 105 in this disclosure. In addition, thecomputer 105 may be programmed for communicating with the network 125,which, as described below, may include various wired and/or wirelessnetworking technologies, e.g., cellular, Bluetooth®, Bluetooth® LowEnergy (BLE), wired and/or wireless packet networks, etc.

The data store 106 may be of any known type, e.g., hard disk drives,solid state drives, servers, or any volatile or non-volatile media. Thedata store 106 may store the collected data 115 sent from the sensors110.

Sensors 110 may include a variety of devices. For example, as is known,various controllers in a vehicle 101 may operate as sensors 110 toprovide data 115 via the vehicle 101 network or bus, e.g., data 115relating to vehicle speed, acceleration, position, subsystem and/orcomponent status, etc. Further, other sensors 110 could include cameras,motion detectors, etc., i.e., sensors 110 to provide data 115 forevaluating a location of a target, projecting a path of a target,evaluating a location of a roadway lane, etc. The sensors 110 could alsoinclude short range radar, long range radar, LIDAR, and/or ultrasonictransducers.

Collected data 115 may include a variety of data collected in a vehicle101. Examples of collected data 115 are provided above, and moreover,data 115 are generally collected using one or more sensors 110, and mayadditionally include data calculated therefrom in the computer 105,and/or at the server 130. In general, collected data 115 may include anydata that may be gathered by the sensors 110 and/or computed from suchdata.

The vehicle 101 may include a plurality of vehicle components 120. Asused herein, each vehicle component 120 includes one or more hardwarecomponents adapted to perform a mechanical function or operation—such asmoving the vehicle, slowing or stopping the vehicle, steering thevehicle, etc. Non-limiting examples of components 120 include apropulsion component (that includes, e.g., an internal combustion engineand/or an electric motor, etc.), a transmission component, a steeringcomponent (e.g., that may include one or more of a steering wheel, asteering rack, etc.), a brake component, a park assist component, anadaptive cruise control component, an adaptive steering component, amovable seat, and the like. The vehicle 101 can include a human-machineinterface (HMI) 120, e.g., a display, a touchscreen display, a portabledevice, etc.

When the computer 105 operates the vehicle 101, the vehicle 101 is an“autonomous” vehicle 101. For purposes of this disclosure, the term“autonomous vehicle” is used to refer to a vehicle 101 operating in afully autonomous mode. A fully autonomous mode is defined as one inwhich each of vehicle 101 propulsion (typically via a powertrainincluding an electric motor and/or internal combustion engine), braking,and steering are controlled by the computer 105. A semi-autonomous modeis one in which at least one of vehicle 101 propulsion (typically via apowertrain including an electric motor and/or internal combustionengine), braking, and steering are controlled at least partly by thecomputer 105 as opposed to a human operator.

The system 100 may further include a network 125 connected to a server130 and a data store 135. The computer 105 may further be programmed tocommunicate with one or more remote sites such as the server 130, viathe network 125, such remote site possibly including a data store 135.The network 125 represents one or more mechanisms by which a vehiclecomputer 105 may communicate with a remote server 130. Accordingly, thenetwork 125 may be one or more of various wired or wirelesscommunication mechanisms, including any desired combination of wired(e.g., cable and fiber) and/or wireless (e.g., cellular, wireless,satellite, microwave, and radio frequency) communication mechanisms andany desired network topology (or topologies when multiple communicationmechanisms are utilized). Exemplary communication networks includewireless communication networks (e.g., using Bluetooth®, Bluetooth® LowEnergy (BLE), IEEE 802.11, vehicle-to-vehicle (V2V) such as DedicatedShort Range Communications (DSRC), etc.), local area networks (LAN)and/or wide area networks (WAN), including the Internet, providing datacommunication services.

FIG. 2 illustrates a host vehicle 101 and a target vehicle 200 on aroadway. The host vehicle 101 can actuate one or more sensors 110 todetect the target vehicle 200, e.g., an image sensor, a radar, a lidar,an ultrasonic transducer, etc. The sensors 110 can have a range 205.Each sensor 110 can have a maximum distance from the vehicle 101 withinwhich the sensor 110 can collect data 115, i.e., the range 205. Themaximum distance for each sensor 110 can be a predetermined value storedin the data store 106 and/or the server 130 and prescribed by, e.g., asensor 110 manufacturer. That is, for purposes of this disclosure therange 205 is defined such that each sensor 110 can collect data 115within the range 205 (which, as will be understood, can vary accordingto conditions such as amount of light, precipitation etc.) as shown inFIG. 2, and at least one sensor 110 cannot collect data 115 at aposition outside the range 205. Each sensor 110 can transmit a valueindicating the maximum distance to the computer 105, and the computer105 can determine the range 205 from the stored maximum distances. Thecomputer 105 can store the range 205 in the data store 106 and/or theserver 130. Alternatively or additionally, the server 130 can send amessage over the network 125 indicating the range 205. When the targetvehicle 200 enters the range 205 of the sensors 110, the sensor 110 cancollect data 115 about the target vehicle 200 and the computer 105 candetect the target vehicle 200.

The target vehicle 200 can send a message 210 over the network 125 tothe host vehicle 101. The target vehicle 200 can send the message 210with, e.g., DSRC. The message 210 can include data 115 about the targetvehicle 200, e.g., a speed, a heading, a location, a size, a brakestatus, a path history, a predicted path, etc. One or more sensors 110in the target vehicle 200 can collect data 115, and the message 210 caninclude the collected data 115. The computer 105 can receive the message210 from the target vehicle 200. The computer 105 can use the data 115from the message 210 to determine whether to actuate one or more vehiclecomponents 120. For example, the computer 105 can compare the locationof the target vehicle 101, as specified in the message 210, to thelocation of the host vehicle 101, and can thereby determine a distancebetween the host vehicle 101 and the target vehicle 200. The computer105 can determine if the distance between the host vehicle 101 and thetarget vehicle 200 is greater than the range 205, i.e., whether thetarget vehicle 200 is outside the range 205. If the target vehicle 200is outside the range 205, the computer 105 can determine that the targetvehicle 200 is not detected and actuate a forward collision warning, asdescribed below.

The computer 105 can be programmed to project a target trajectory 215 ofthe target vehicle 200 and a host trajectory 220 of the host vehicle101, collectively, trajectories 215, 220. The computer 105 can projectthe trajectories 215, 220 based on collected data 115 from the sensors110. The trajectories 215, 220 can meet at an intersection point 225.The intersection point 225 can be a predicted location at which the hostvehicle 101 and the target vehicle 200 can meet, i.e., in a collision.The computer 105 can project the trajectories 215, 220, upon detectingthe target vehicle 200.

The computer 105 can be programmed to suppress a forward collisionwarning upon detecting the target vehicle 200. The computer 105 cangenerate a plurality of forward collision warnings for a plurality oftarget vehicles 200, including target vehicles 200 that may not have arisk of colliding with the host vehicle 101, resulting in nuisancewarnings. To reduce the nuisance warnings, the computer 105 can beprogrammed to suppress the forward collision warning when the sensors110 detect the target vehicle 200, allowing the computer 105 accordingto pre-collision assist (PCA) programming to actuate one or morecomponents 120 to avoid a potential collision. Furthermore, the computer105 can be programmed to send the message with the forward collisionwarning after actuating a brake 120 in the host vehicle 101, i.e., afterthe PCA programming has actuated the brake 120 and the forward collisionwarning is not a nuisance warning.

The computer 105 can be programmed to determine a threat level with athreat algorithm using data 115 collected about the host vehicle 101 andthe target vehicle 200. The computer 105 can collect data 115 with thesensors 110 on, e.g., a speed, a position, an acceleration, etc., of thehost vehicle 101 and the target vehicle 200. Furthermore, the computer105 can use data 115 in the message 210 sent from the target vehicle 200to determine the threat level. Based on the collected data 115, thecomputer 105 can, using a threat algorithm (e.g., known threatcalculations), determine a threat level for the target vehicle 200.

Various threat algorithms and techniques for obtaining a threat level,e.g., a “threat number,” are known. The threat algorithm can include afunction, e.g., a weighted sum, a weighted product, etc., of a pluralityof parameters related to the host vehicle 101 and the target vehicle200. The parameters can include, e.g., a predicted time to collisionbetween the host vehicle 101 and the target vehicle 200, predicted pathsof the host vehicle 101 and the target vehicle 200, a predicted lateralacceleration to avoid a collision based on a host vehicle 101 speed, apredicted longitudinal deceleration to avoid a collision based on a hostvehicle 101 position and braking power, a predicted host longitudinalacceleration to avoid the collusion based on a host vehicle 101acceleration, a current host vehicle 101 operator state based on acurrent acceleration, braking, and steering of the host vehicle 101, apredicted target vehicle 200 longitudinal deceleration to avoid thecollision based on a current target vehicle 200 acceleration andbraking, a predicted target vehicle 200 longitudinal acceleration toavoid the collision based on a current target vehicle 200 speed andacceleration, etc. The threat algorithm can determine a threat level,e.g., a threat number between 0 and 1 that is a probability of acollision between the host vehicle 101 and the target vehicle 200.

Furthermore, the computer 105 can determine the threat level that isbased on a shortest distance between the host vehicle 101 and a targetvehicle 200, a time rate of change of the shortest distance, and anangle between a host vehicle 101 trajectory and a line along thedistance between the host vehicle 101 and the target vehicle 100.Additionally or alternatively, the computer 105 can determine a rotationrate of the host vehicle 101 relative to the roadway (e.g., when thehost vehicle 101 is turning) and determining the threat level based onthe rotation rate.

The computer 105 can actuate one or more components 120 based on thethreat level. For example, the computer 105 can be programmed to actuatea brake 120, e.g., an autonomous emergency brake (AEB) 120, when thethreat level exceeds a threat threshold, stopping the host vehicle 101.The computer 105 can actuate the AEB 120 until another value of thethreat level determined after actuating the AEB 120 is below the threatthreshold. In another example, the computer 105 can actuate a steering120 in an autonomous mode to steer the host vehicle 101 away from thetarget vehicle 200. The computer 105 can be further programmed toactuate a steering 120 and a propulsion 120 based on the threat level.

The computer 105 can determine a time to collision between the hostvehicle 101 and the target vehicle 200. The time to collision can be apredicted time until the trajectories of the host vehicle and the targetvehicle 200 meet, e.g., at the intersection point 225. The computer 105can, based on the data 115, predict the trajectories of the host vehicle101 and the target vehicle using known techniques. The computer 105 cansend the message indicating the forward collision warning when the timeto collision is greater than a time threshold. The computer 105 canactuate the brake when the time to collision is less than a timethreshold. The time threshold can be a predetermined value stored in thedata store 106 and/or the server 130, and can be determined as, e.g., anaverage response time of a vehicle 101 operator, e.g., 1 second.

FIG. 3 illustrates an example intersection where the target vehicle 200is occluded from the host vehicle 101. The intersection can include anobject 300 that can prevent sensors 110 in the host vehicle 101 fromdetecting the target vehicle 200. For example, the object 300 can be abuilding, a utility pillar, etc. As used herein, the target vehicle 200is “occluded” when the sensors 110 in the host vehicle 101 do not detectthe target vehicle 200 and the computer 105 of the host vehicle 101receives the message 210 from the target vehicle 200. That is, thecomputer 105 recognizes the presence of the target vehicle 200 from themessage 210 but does not detect the target vehicle 200 with the sensor110.

The computer 105 in the host vehicle 101 can receive the message 210over the network 125 (e.g., via V2V communications) from the targetvehicle 200. That is, the object 300 may not prevent communication overthe network 125. Upon receiving the message from the target vehicle 200,the computer 105 can actuate one or more sensors 110 to detect thetarget vehicle 200. The object 300 can block the sensors 110 fromcollecting data 115, e.g., blocking a field of vision of an image sensor110, reflecting ultrasonic waves and/or radar waves, blocking lasers ofa LIDAR 110, etc.

As described above, the sensors 110 can have a range 205 to collect data115 about the target vehicle 200. The computer 105 can be programmed todetermine that the sensors 110 have failed to detect the target vehicle200 when the location data 115 from the message 210 from the targetvehicle 200 is within the range 205 of the sensors 115 and the collecteddata 115 do not identify the target vehicle 200 within the range 205.The object 300 can limit the range 205 of the sensors 110.

When the computer 105 fails to detect the target vehicle 200 with thesensors 110, the computer 105 can provide a forward collision warning tothe user of the host vehicle 101. The computer 105 can send a messageindicating the forward collision warning to the user, e.g., on a vehicle101 HMI, to a user device (e.g., a smartphone, a wearable device, etc.),etc. As described above, the forward collision warning can inform theuser that a target vehicle 200 could collide with the host vehicle 101.The computer 105 can be programmed to use the data 115 from thecommunication with the target vehicle 200 to determine a threat level,as described above. The computer 105 can be programmed to actuate theforward collision warning when the threat level is above a warningthreshold.

The example of FIG. 3 illustrates the target vehicle 200 at anintersection. In another example (not shown), the target vehicle 200 andthe host vehicle 101 can be travelling in a same roadway lane, and thetarget vehicle 200 can be occluded by one or more other vehicles betweenthe host vehicle 101 and the target vehicle 200. If the target vehicle200 suddenly brakes, the host vehicle 101 could fail to detect thesudden braking and collide with the nearest vehicle. The computer 105can be programmed to communicate with the target vehicle 200 and toactuate the components 120 based on the data 115 from the sensors 110and from the communication 210 with the target vehicle 200, as describedabove.

FIG. 4 illustrates an example process 400 for detecting a target vehicle200. The process 400 begins in a block 405, in which the computer 105receives a communication, e.g., a message 210, over the network 125. Asdescribed above, a target vehicle 200 can send a message over thenetwork 125 (e.g., using DSRC) with data 115 about the target vehicle200 position, speed, trajectory, etc. The computer 105 can receive themessage and the data 115.

Next, in a block 410, the computer 105 determines whether a targetvehicle 200 is detected. The computer 105 can determine from thecommunication whether the communication includes a message 210 from atarget vehicle 200. If the computer 105 determines that there is atarget vehicle 200, the process 400 continues in a block 415. Otherwise,the process 400 returns to the block 405 to receive more communications.

In the block 415, the computer 105 actuates one or more sensors 110,including a radar 110 and/or a camera 110, to detect the target vehicle200. The computer 105 can collect data 115 with the sensors 110 todetect the target vehicle 200 that sent the message 210 over the network125, e.g., image data 115, radar data 115, LIDAR data 115, etc.

Next, in a block 420, the computer 105 determines whether the data 115collected by the sensors 110 allows the computer 105 to detect thetarget vehicle 200. If the sensors 110 are occluded, e.g., by an object300 between the host vehicle 101 and the target vehicle 200, the data115 can fail to indicate the presence of the target vehicle 200. If thetarget vehicle 200 is not within the range 205 of the sensors 110, thedata 115 can fail to indicate the target vehicle 200. If the computer105 detects the target vehicle 200 based on the data 115, the process400 continues in a block 425. Otherwise, the process 400 continues in ablock 435.

In the block 425, the computer 105 determines whether a threat level forthe target vehicle 200 is above a threat threshold. The threat level canbe, e.g., a threat number determined by a threat algorithm, as describedabove. If the threat level is above the threat threshold, the process400 continues in a block 430. Otherwise, the process 400 ends.

In the block 430, the computer 105 actuates a vehicle component 120. Forexample, the computer 105 can actuate a brake 120, e.g., an emergencybrake 120, to stop the host vehicle 101 prior to colliding with thetarget vehicle 200 as detected by data 115, a steering 120, e.g., anemergency steering 120, etc. As described above, the computer 105 canactuate the steering 120, the brake 120, and the propulsion 120 to avoidthe target vehicle 200. Following the block 430, the process 400 ends.

In the block 435, the computer 105 determines whether a threat level forthe target vehicle 200 is above a threat threshold. The threat level canbe, e.g., a threat number determined by a threat algorithm, as describedabove. If the threat level is above the threat threshold, the process400 continues in a block 440. Otherwise, the process 400 ends.

In the block 440, the computer 105 provides a forward collision warningto a user in the host vehicle 101 based on the received message 210 fromthe target vehicle 200. As described above, the forward collisionwarning can be a visual, aural, and/or haptic alert indicating thepresence of the target vehicle 200. The computer 105 can provide theforward collision warning on, e.g., a vehicle 101 HMI 120, a portabledevice such as a smartphone or smartwatch, etc. Following the block 440,the process 400 ends.

As used herein, the adverb “substantially” modifying an adjective meansthat a shape, structure, measurement, value, calculation, etc. maydeviate from an exact described geometry, distance, measurement, value,calculation, etc., because of imperfections in materials, machining,manufacturing, data collector measurements, computations, processingtime, communications time, etc.

Computers 105 generally each include instructions executable by one ormore computers such as those identified above, and for carrying outblocks or steps of processes described above. Computer-executableinstructions may be compiled or interpreted from computer programscreated using a variety of programming languages and/or technologies,including, without limitation, and either alone or in combination,Java™, C, C++, Visual Basic, Java Script, Perl, HTML, etc. In general, aprocessor (e.g., a microprocessor) receives instructions, e.g., from amemory, a computer-readable medium, etc., and executes theseinstructions, thereby performing one or more processes, including one ormore of the processes described herein. Such instructions and other datamay be stored and transmitted using a variety of computer-readablemedia. A file in the computer 105 is generally a collection of datastored on a computer readable medium, such as a storage medium, a randomaccess memory, etc.

A computer-readable medium includes any medium that participates inproviding data (e.g., instructions), which may be read by a computer.Such a medium may take many forms, including, but not limited to,non-volatile media, volatile media, etc. Non-volatile media include, forexample, optical or magnetic disks and other persistent memory. Volatilemedia include dynamic random access memory (DRAM), which typicallyconstitutes a main memory. Common forms of computer-readable mediainclude, for example, a floppy disk, a flexible disk, hard disk,magnetic tape, any other magnetic medium, a CD-ROM, DVD, any otheroptical medium, punch cards, paper tape, any other physical medium withpatterns of holes, a RAM, a PROM, an EPROM, a FLASH-EEPROM, any othermemory chip or cartridge, or any other medium from which a computer canread.

With regard to the media, processes, systems, methods, etc. describedherein, it should be understood that, although the steps of suchprocesses, etc. have been described as occurring according to a certainordered sequence, such processes could be practiced with the describedsteps performed in an order other than the order described herein. Itfurther should be understood that certain steps could be performedsimultaneously, that other steps could be added, or that certain stepsdescribed herein could be omitted. For example, in the process 400, oneor more of the steps could be omitted, or the steps could be executed ina different order than shown in FIG. 4. In other words, the descriptionsof systems and/or processes herein are provided for the purpose ofillustrating certain embodiments, and should in no way be construed soas to limit the disclosed subject matter.

Accordingly, it is to be understood that the present disclosure,including the above description and the accompanying figures and belowclaims, is intended to be illustrative and not restrictive. Manyembodiments and applications other than the examples provided would beapparent to those of skill in the art upon reading the abovedescription. The scope of the invention should be determined, not withreference to the above description, but should instead be determinedwith reference to claims appended hereto and/or included in anon-provisional patent application based hereon, along with the fullscope of equivalents to which such claims are entitled. It isanticipated and intended that future developments will occur in the artsdiscussed herein, and that the disclosed systems and methods will beincorporated into such future embodiments. In sum, it should beunderstood that the disclosed subject matter is capable of modificationand variation.

The article “a” modifying a noun should be understood as meaning one ormore unless stated otherwise, or context requires otherwise. The phrase“based on” encompasses being partly or entirely based on.

What is claimed is:
 1. A system for a first vehicle, comprising acomputer including a processor and a memory, the memory storinginstructions executable by the processor to: receive a communicationfrom a second vehicle; receive first vehicle sensor data; determinewhether the second vehicle is detected from the first vehicle sensordata; if the second vehicle is not detected based on the first vehiclesensor data, send a message indicating a forward collision warning; andif the second vehicle is detected based on the first vehicle sensordata, suppress the forward collision warning and actuate a first vehiclebrake.
 2. The system of claim 1, wherein the instructions furtherinclude instructions to determine a threat level of the second vehicleand, if the second vehicle is not detected, to send the messageindicating the forward collision warning when the threat level of thesecond vehicle exceeds a threat threshold.
 3. The system of claim 2,wherein the instructions further include instructions to, if the secondvehicle is detected, actuate the brake until the threat level dropsbelow the threat threshold.
 4. The system of claim 1, wherein theinstructions further include instructions to determine a time tocollision between the first and second vehicles, and to send the messageindicating the forward collision warning when the time to collision isgreater than a time threshold.
 5. The system of claim 1, wherein theinstructions further include instructions to determine a time tocollision between the first and second vehicles, and to actuate thebrake when the time to collision is less than a time threshold.
 6. Thesystem of claim 1, wherein the instructions further include instructionsto receive data about the second vehicle in the communication includingat least one of a speed, a heading, and a location of the secondvehicle.
 7. The system of claim 6, wherein the instructions furtherinclude instructions to determine a threat level for the second vehiclebased on the data in the communication.
 8. The system of claim 1,wherein the instructions further include instructions to send themessage with the forward collision warning after actuating the firstvehicle brake.
 9. The system of claim 1, wherein the instructionsfurther include instructions to, if the second vehicle is detected,project a trajectory of the second vehicle and to actuate the brakebased on the projected trajectory.
 10. The system of claim 1, whereinthe instructions further include instructions to determine a range for asensor to collect data about the second vehicle, and to determine thatthe sensor has failed to detect the second vehicle when the locationdata from the communication from the second vehicle is within the rangeof the sensor and the collected data do not identify the second vehiclewithin the range of the sensor.
 11. A method executable by a computer ina first vehicle, comprising: receiving a communication from a secondvehicle; receiving first vehicle sensor data; determining whether thesecond vehicle is detected from the first vehicle sensor data; if thesecond vehicle is not detected based on the first vehicle sensor data,sending a message indicating a forward collision warning; and if thesecond vehicle is detected based on the first vehicle sensor data,suppressing the forward collision warning and actuating a first vehiclebrake.
 12. The method of claim 11, further comprising determining athreat level of the second vehicle and, if the second vehicle is notdetected, sending the message indicating the forward collision warningwhen the threat level of the second vehicle exceeds a threat threshold.13. The method of claim 12, further comprising, if the second vehicle isdetected, actuating the brake until the threat level drops below thethreat threshold.
 14. The method of claim 11, further comprisingdetermining a time to collision between the first and second vehicles,and sending the message indicating the forward collision warning whenthe time to collision is greater than a time threshold.
 15. The methodof claim 11, further comprising determining a time to collision betweenthe first and second vehicles and actuating the brake when the time tocollision is less than a time threshold.
 16. The method of claim 11,further comprising receiving data about the second vehicle in thecommunication including at least one of a speed, a heading, and alocation of the second vehicle.
 17. The method of claim 16, furthercomprising determining a threat level for the second vehicle based onthe data in the communication.
 18. The method of claim 11, furthercomprising sending the message with the forward collision warning afteractuating the first vehicle brake.
 19. The method of claim 11, furthercomprising, if the second vehicle is detected, projecting a trajectoryof the second vehicle and actuating the brake based on the projectedtrajectory.
 20. The method of claim 11, further comprising determining arange for a sensor to collect data about the second vehicle, anddetermining that the sensor has failed to detect the second vehicle whenthe location data from the communication from the second vehicle iswithin the range of the sensor and the collected data do not identifythe second vehicle within the range of the sensor.